function CarregarValorRateioPorUnidade( fonteId, campusId)
{
         var ajax = new sack();
         var url = "http://"+servidor+"/CarregarDados.php?informacao=rateio&fonteId="+fonteId+"&campusId="+campusId;
         ajax.requestFile = url;
         // verifica se é passado mais um argumento (3 argumentos no total) no caso de alteração, que é passado o valor da reserva
         if(arguments.length > 2){
             var valorReserva;
             // No caso da tela de alteração quando seleciona a Unidade(campus), verifica se a fonte e o campus é o mesmo da reserva a ser alterada para somar no caso de ser e não somar no caso de não ser.
             if(arguments.length > 3){
                 if(arguments[3] != campusId || arguments[4] != fonteId){
                     valorReserva = 0;
                 }else{
                     valorReserva = arguments[2];
                 }
             }else{
                valorReserva = arguments[2];
             }
             ajax.onCompletion = function() {ProcessarXMLValorRateio( ajax.responseXML, valorReserva );};

        }else{
            ajax.onCompletion = function() {ProcessarXMLValorRateio( ajax.responseXML );};
         }
         ajax.runAJAX();
}

function CarregarSubElementos(naturezaId){
	var ajax = new sack();
    var url = "http://"+servidor+"/CarregarDados.php?informacao=carregarSubElementos&naturezaId="+naturezaId;
    ajax.requestFile = url;
    ajax.onCompletion = function() {ProcessarXMLSubElementos( ajax.responseXML );};
    ajax.runAJAX();
}

function carregarNaturezas(){
	var ajax = new sack();
    var url = "http://"+servidor+"/CarregarDados.php?informacao=carregarNaturezas";
    ajax.requestFile = url;
    ajax.onCompletion = function() {ProcessarXMLNaturezas( ajax.responseXML );};
    ajax.runAJAX();
}

/**
Transforma os resultados vindo do XML em informa��es din�micas na tela
@xml - XML com as informa��es sobre a fonte
*/
function ProcessarXMLValorRateio( xml )
{
		
		 campoValorRateio = document.getElementById("valorRateio");
		 campoValorRateio.innerHTML = "";
		 campoSaldoRateio = document.getElementById("saldoFonte");
		 campoSaldoRateio.innerHTML = "";

         if( xml != null )
         {

              var resultadosXML = xml.getElementsByTagName("rateio");

              // recupera as informa��es vindas do xml
              var rateio = resultadosXML[0];
              var saldoRateio = rateio.getElementsByTagName("valor_corrente")[0].firstChild.nodeValue;
              var valorRateio = rateio.getElementsByTagName("valor_total")[0].firstChild.nodeValue;

              if(arguments.length > 1){
                  saldoRateio = parseInt(saldoRateio) + parseInt(arguments[1]);
              }

              var saldoRateioMoeda = formataMoeda(saldoRateio);
              campoSaldoRateio.innerHTML = saldoRateioMoeda;
              
              var valorRateioMoeda = formataMoeda(valorRateio);
              campoValorRateio.innerHTML = valorRateioMoeda;
              


              
        }else{
            var saldoRateio = 0; 
            var valorRateio = 0;
            
            var saldoRateioMoeda = formataMoeda(saldoRateio);
            campoSaldoRateio.innerHTML = saldoRateioMoeda;
            
            var valorRateioMoeda = formataMoeda(valorRateio);
            campoValorRateio.innerHTML = valorRateioMoeda;
        }
}

function diminuirSaldoValorReserva( valor ){
	saldo = document.getElementById("saldoFonte").innerHTML.replace(",", "");
	s1 = saldo.replace(".", "");
	s2 = s1.replace(".", "");
	s3 = s2.replace(".", "");
	saldo1 = s3;
	document.getElementById("saldoFonte").innerHTML = "";
	document.getElementById("saldoFonte").innerHTML = formataMoeda(saldo1 - valor);
}

function ProcessarXMLSubElementos(xml){
	 var selectSubElementos = document.getElementById("subelemReserva");
     var optionSubElemento = document.getElementById("subelemValue");

     var i;
     // antes de exibir o resultado limpa o select que contem as informa��es da consulta anterior
     for( i = selectSubElementos.length -1; i >= 1; i-- )
     {
              selectSubElementos.remove(i);
     }

     if( xml == null )
     {
         /*var divInformacaoSetor = document.getElementById("informacaoSetor");
         if( divInformacaoSetor != null )
             divInformacaoSetor.innerHTML = "";*/
         optionSubElemento.innerHTML = "Nenhum sub elemento foi encontrado!";

     }
     else
     {

          var resultadosXML = xml.getElementsByTagName("sub_elemento");

          if( resultadosXML.length > 0) // verifica se houveram resultados
          {
    		                      for(var i=0; i < resultadosXML.length; i++) // percorre o resultado
    		                      {
                                              // recupera as informa��es vindas do xml
                                              var subElemento = resultadosXML[i];
                                              var naturezaId = subElemento.getElementsByTagName("natureza_despesa_id")[0].firstChild.nodeValue;
                                              var subElementoId = subElemento.getElementsByTagName("sub_elemento_id")[0].firstChild.nodeValue;
                                              var descricao = subElemento.getElementsByTagName("descricao")[0].firstChild.nodeValue;
                                              
                                              // adiciona um novo 'option' ao campo select com o setor encontrado
                                              var novoSubElemento = document.createElement("option");
                                              novoSubElemento.setAttribute("id", "subElementoId");
                                              novoSubElemento.value = subElementoId;
                                              novoSubElemento.text  = ""+subElementoId+" - "+descricao;
                                              selectSubElementos.options.add(novoSubElemento);
                                  }
                                  optionSubElemento.innerHTML = "Selecione a Natureza";
         }
    }

}

function ProcessarXMLNaturezas(xml){
	 var selectNatureza = document.getElementById("naturezaDespesa");
    var optionNatureza = document.getElementById("optNatureza");

    var i;
    // antes de exibir o resultado limpa o select que contem as informa��es da consulta anterior
    for( i = selectNatureza.length -1; i >= 1; i-- )
    {
             selectNatureza.remove(i);
    }

    if( xml == null )
    {
        /*var divInformacaoSetor = document.getElementById("informacaoSetor");
        if( divInformacaoSetor != null )
            divInformacaoSetor.innerHTML = "";*/
        optionNatureza.innerHTML = "Nenhuma Natureza foi encontrada!";

    }
    else
    {

         var resultadosXML = xml.getElementsByTagName("natureza");

         if( resultadosXML.length > 0) // verifica se houveram resultados
         {
   		                      for(var i=0; i < resultadosXML.length; i++) // percorre o resultado
   		                      {
                                             // recupera as informa��es vindas do xml
                                             var natureza = resultadosXML[i];                                             
                                             var naturezaId = natureza.getElementsByTagName("natureza_id")[0].firstChild.nodeValue;
                                             var descricao = natureza.getElementsByTagName("descricao")[0].firstChild.nodeValue;
                                             
                                             // adiciona um novo 'option' ao campo select com o setor encontrado
                                             var novaNatureza = document.createElement("option");
                                             novaNatureza.setAttribute("id", "naturezaId");
                                             novaNatureza.value = naturezaId;
                                             novaNatureza.text  = ""+naturezaId+" - "+descricao;
                                             selectNatureza.options.add(novaNatureza);
                                 }
                                 optionNatureza.innerHTML = "Selecione a Natureza";
        }
   }

}

function ProcessarOpcoesDeBusca( opcao )
{
	
	         var tbCampoBuscaReserva = document.getElementById("tbCampoBuscaReserva");

	         for( var i = tbCampoBuscaReserva.rows.length; i > 0 ; i-- ) // remover linhas da tabela
	        	 tbCampoBuscaReserva.deleteRow ( i-1 );


	    		                         	        	 
	        	 var trTbCampoBuscaReserva = document.createElement("tr");
	        	 tbCampoBuscaReserva.appendChild ( trTbCampoBuscaReserva );

	        	 if(opcao == "processo"){
	        		 
	        		 var tdlbOpcaoBusca = document.createElement("td");
	        		 tdlbOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdlbOpcaoBusca.setAttribute("width", "30%");
	        		 tdlbOpcaoBusca.innerHTML = "&nbsp;Processo:";
	        		 trTbCampoBuscaReserva.appendChild ( tdlbOpcaoBusca );

	        		 var tdCampoOpcaoBusca = document.createElement("td");
	        		 tdCampoOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdCampoOpcaoBusca.innerHTML = "<input name='processo' class='inputTexto' size='20' maxlength='20' onkeypress='formatar(this,\"#####.######/####-##\"); return soNumero(event)'/>";
	        		 trTbCampoBuscaReserva.appendChild ( tdCampoOpcaoBusca );

	        		 var trButton = document.createElement("tr");
	        		 tbCampoBuscaReserva.appendChild ( trButton );
	        		 trButton.appendChild(document.createElement("td"));
	        		 var tdButton = document.createElement("td");
	        		 tdButton.innerHTML = "<input type='image' style='border: none; float: right;' src='templates/btbuscar.png' />";
	        		 trButton.appendChild (tdButton);
	        		 //tdButton.innerHTML = "<a href='AlterarReserva.php'><img style='border: none; float: right;' src='templates/btbuscar.png' /></a>";
		        	 
		        	 
	        	 }else  if(opcao == "campus"){

	        		 CarregarCampis("ListaCampi" , "");
	        		 var tdlbOpcaoBusca = document.createElement("td");
	        		 tdlbOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdlbOpcaoBusca.setAttribute("width", "30%");
	        		 tdlbOpcaoBusca.innerHTML = "&nbsp;Unidade:";
	        		 trTbCampoBuscaReserva.appendChild ( tdlbOpcaoBusca );

	        		 var tdCampoOpcaoBusca = document.createElement("td");
	        		 tdCampoOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdCampoOpcaoBusca.innerHTML = "<select name='campiId' id='ListaCampi' class='inputTexto' style='width: 310px;' >";
	        	
	        		 trTbCampoBuscaReserva.appendChild ( tdCampoOpcaoBusca );
	        		 
	        		 var trButton = document.createElement("tr");
	        		 tbCampoBuscaReserva.appendChild ( trButton );
	        		 trButton.appendChild(document.createElement("td"));
	        		 var tdButton = document.createElement("td");
	        		 tdButton.innerHTML = "<input type='image' style='border: none; float: right;' src='templates/btbuscar.png' />";
		        	 trButton.appendChild (tdButton);
		        	 
	        	 }else  if(opcao == "periodo"){

	        		 var tdlbOpcaoBusca = document.createElement("td");
	        		 tdlbOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdlbOpcaoBusca.setAttribute("width", "30%");
	        		 tdlbOpcaoBusca.innerHTML = "&nbsp;De:";
	        		 trTbCampoBuscaReserva.appendChild ( tdlbOpcaoBusca );

	        		 var tdCampoOpcaoBusca = document.createElement("td");
	        		 tdCampoOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdCampoOpcaoBusca.innerHTML = "<div><input name='periodoInicio' id='periodoInicio' size='15' type='text'/> a <input name='periodoFim' id='periodoFim' size='15' type='text'/> <script>$(function() { $( '#periodoInicio' ).datepicker({autoSize: true,  dateFormat: 'dd/mm/yy'});$( '#periodoFim' ).datepicker({dateFormat: 'dd/mm/yy'});});</script></div>";

	        		 trTbCampoBuscaReserva.appendChild ( tdCampoOpcaoBusca );
	        		 
	        		 var trButton = document.createElement("tr");
	        		 tbCampoBuscaReserva.appendChild ( trButton );
	        		 trButton.appendChild(document.createElement("td"));
	        		 var tdButton = document.createElement("td");
	        		 tdButton.innerHTML = "<input type='image' style='border: none; float: right;' src='templates/btbuscar.png' />";
		        	 trButton.appendChild (tdButton);

	        	 }else  if(opcao == "setor"){


	        		 CarregarCampis("ListaCampis" , "");
	        		 var tdlbOpcaoBusca = document.createElement("td");
	        		 tdlbOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdlbOpcaoBusca.setAttribute("width", "30%");
	        		 tdlbOpcaoBusca.innerHTML = "&nbsp;Campus:";
	        		 trTbCampoBuscaReserva.appendChild ( tdlbOpcaoBusca );

	        		 var tdCampoOpcaoBusca = document.createElement("td");
	        		 tdCampoOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdCampoOpcaoBusca.innerHTML = "<select name='campiId' id='ListaCampis' class='inputTexto' style='width: 310px;' onchange='CarregarSetores(this.value);'>" +
	        		 "<option value='0' id='campi'>Selecione o Campi...</option>";

	        		 //Linha de Espaco da tabela &nbsp;
	        		 var trNbsp = document.createElement("tr"); 
	        		 tbCampoBuscaReserva.appendChild ( trNbsp );

	        		 var tdNbsp = document.createElement("tr");
	        		 tdNbsp.setAttribute("colspan", "2");
	        		 tdNbsp.innerHTML = "&nbsp;";
	        		 trNbsp.appendChild(tdNbsp);
	        		 //

	        		 trTbCampoBuscaReserva.appendChild ( tdCampoOpcaoBusca );;

	        		 var trTbCampoBuscaReservaSetor = document.createElement("tr");				        	 

	        		 tbCampoBuscaReserva.appendChild ( trTbCampoBuscaReservaSetor );


	        		 var tdlbOpcaoBusca = document.createElement("td");
	        		 tdlbOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdlbOpcaoBusca.setAttribute("width", "30%");
	        		 tdlbOpcaoBusca.innerHTML = "&nbsp;Setor:";
	        		 trTbCampoBuscaReservaSetor.appendChild ( tdlbOpcaoBusca );

	        		 var tdCampoOpcaoBusca = document.createElement("td");
	        		 tdCampoOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdCampoOpcaoBusca.innerHTML = "<select name='setorId' id='listaSetores' class='inputTexto' style='width: 310px;' >" +
	        		 "<option value='0' id='setor'>Selecione Primeiro o Campi...</option>";
	        		 trTbCampoBuscaReservaSetor.appendChild ( tdCampoOpcaoBusca );
	        		 
	        		 var trButton = document.createElement("tr");
	        		 tbCampoBuscaReserva.appendChild ( trButton );
	        		 trButton.appendChild(document.createElement("td"));
	        		 var tdButton = document.createElement("td");
	        		 tdButton.innerHTML = "<input type='image' style='border: none; float: right;' src='templates/btbuscar.png' />";
		        	 trButton.appendChild (tdButton);	
	        	 }else  if(opcao == "acao"){

	        		 CarregarAcoesPeloAno('3');
	        		 var tdlbOpcaoBusca = document.createElement("td");
	        		 tdlbOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdlbOpcaoBusca.setAttribute("width", "30%");
	        		 tdlbOpcaoBusca.innerHTML = "&nbsp;A&ccedil;&atilde;o Or&ccedil;ament&aacute;ria:";
	        		 trTbCampoBuscaReserva.appendChild ( tdlbOpcaoBusca );

	        		 var tdCampoOpcaoBusca = document.createElement("td");
	        		 tdCampoOpcaoBusca.setAttribute("class", "textoTabelas");
	        		 tdCampoOpcaoBusca.innerHTML = "<select name='acaoId' id='listaProgramas' class='inputTexto' style='width: 310px;' >";
	        	
	        		 trTbCampoBuscaReserva.appendChild ( tdCampoOpcaoBusca );
	        		 
	        		 var trButton = document.createElement("tr");
	        		 tbCampoBuscaReserva.appendChild ( trButton );
	        		 trButton.appendChild(document.createElement("td"));
	        		 var tdButton = document.createElement("td");
	        		 tdButton.innerHTML = "<input type='image' style='border: none; float: right;' src='templates/btbuscar.png' />";
		        	 trButton.appendChild (tdButton);
		        	 
	        	 }

	
}

function CarregarReserva( opcao )
{
         var ajax = new sack();
         var url = "http://"+servidor+"/CarregarDados.php?informacao=reservas&opcao="+opcao;
         ajax.requestFile = url;
         ajax.onCompletion = function() {ProcessarXMLProcessarXMLCampoReserva( ajax.responseXML );};
         ajax.runAJAX();
}

function ProcessarXMLCampoReserva( xml )
{
	
	         var tbCampoReserva = document.getElementById("tbCampoReserva");

	         for( var i = tbCampoReserva.rows.length; i > 0 ; i-- ) // remover linhas da tabela
	        	 tbCampoReserva.deleteRow ( i-1 );

	         var resultadosXML = xml.getElementsByTagName("reserva");

	         for(var i=0; i < resultadosXML.length; i++) // percorre o resultado
	    	 {
	        	 // recupera as informa��es vindas do xml
	        	 var reserva = resultadosXML[i];
	        	 var reservaId 		      = reserva.getElementsByTagName("id")[0].firstChild.nodeValue;
	    		                          
	    		                          
	    		                          
	        	 
	        	 var trTbCampoReserva = document.createElement("tr");
	        	 
	        	 tbCampoReserva.appendChild ( trTbCampoReserva );

	                                      
	        	 var tdlbAcaoOrcTbCampoReserva = document.createElement("td");
	        	 tdlbAcaoOrcTbCampoReserva.setAttribute("class", "textoTabelas");
	        	 tdlbAcaoOrcTbCampoReserva.setAttribute("width", "30%");
	        	 tdlbAcaoOrcTbCampoReserva.innerHTML = "&nbsp;A&ccedil;&atilde;o Or&ccedil;ament&atilde;ria:";
	        	 trTbCampoReserva.appendChild ( tdlbAcaoOrcTbCampoReserva );
	                                      
	        	 var tdAcaoOrcTbCampoReserva = document.createElement("td");
	        	 tdAcaoOrcTbCampoReserva.setAttribute("class", "textoTabelas");
	        	 tdAcaoOrcTbCampoReserva.innerHTML = "<input name='acao"+i+"' value='"+acao+"' class='inputTexto' size='15' maxlength='10'/>"+"<input type='hidden' name='fonteId"+i+"' value='"+fonteId+"'/>";
	        	 trTbCampoReserva.appendChild ( tdAcaoOrcTbCampoReserva );
	        	 
	        	 
	        	 //Linha de Espaco da tabela &nbsp;
	        	 var trNbsp = document.createElement("tr"); 
	        	 tbCampoReserva.appendChild ( trNbsp );
	        	 
	        	 var tdNbsp = document.createElement("tr");
	        	 tdNbsp.setAttribute("colspan", "2");
	        	 tdNbsp.innerHTML = "&nbsp;";
	        	 trNbsp.appendChild(tdNbsp);
	        	 //
	        	 
	        	 var trTbCampoFonteTipoDespesa = document.createElement("tr");
	        	 tbCampoReserva.appendChild ( trTbCampoFonteTipoDespesa );
	        	 
	        	 var tdlbTipoDespesaTbCampoFonte = document.createElement("td");
	        	 tdlbTipoDespesaTbCampoFonte.setAttribute("class", "textoTabelas");
	        	 tdlbTipoDespesaTbCampoFonte.setAttribute("width", "30%");
	        	 tdlbTipoDespesaTbCampoFonte.innerHTML = "&nbsp;Tipo de Despesa:";
	        	 trTbCampoFonteTipoDespesa.appendChild ( tdlbTipoDespesaTbCampoFonte );
	        	 
	        	 var selectTipoDespesa = "";
	        		
	        	if (fonteTipoDespesa == 33){
	        		selectTipoDespesa = "<select name='tipoDespesa"+i+"' id='tipoDespesa"+i+"' class='inputTexto' >"                             
                    +"<option value='33' name='despesa"+i+"' id='despesa"+i+"' selected>33 - Corrente</option>"
                    +"<option value='44' name='despesa"+i+"' id='despesa"+i+"'>44 - Capital</option>"
                    +"</select> ";
	        	}
		        if (fonteTipoDespesa == 44){
		        		selectTipoDespesa = "<select name='tipoDespesa"+i+"' id='tipoDespesa"+i+"' class='inputTexto' >"                             
	                    +"<option value='33' name='despesa"+i+"' id='despesa"+i+"' >33 - Corrente</option>"
	                    +"<option value='44' name='despesa"+i+"' id='despesa"+i+"'selected>44 - Capital</option>"
	                    +"</select> ";
		        	}
	        	 
	        	 var tdTipoDespesaTbCampoFonte = document.createElement("td"); 
	        	 tdTipoDespesaTbCampoFonte.setAttribute("class", "textoTabelas");
	        	 tdTipoDespesaTbCampoFonte.innerHTML = selectTipoDespesa;
	        	 trTbCampoFonteTipoDespesa.appendChild ( tdTipoDespesaTbCampoFonte );
	        	 
	        	 //Linha de Espaco da tabela &nbsp;
	        	 var trNbsp = document.createElement("tr"); 
	        	 tbCampoReserva.appendChild ( trNbsp );
	        	 
	        	 var tdNbsp = document.createElement("tr");
	        	 tdNbsp.setAttribute("colspan", "2");
	        	 tdNbsp.innerHTML = "&nbsp;";
	        	 trNbsp.appendChild(tdNbsp);
	        	 //
	        	 
	        	 var trTbCampoFonteValor = document.createElement("tr");
	        	 tbCampoReserva.appendChild ( trTbCampoFonteValor );
	        	 
	        	 var tdlbValorTbCampoFonte = document.createElement("td");
	        	 tdlbValorTbCampoFonte.setAttribute("class", "textoTabelas");
	        	 tdlbValorTbCampoFonte.setAttribute("width", "30%");
	        	 tdlbValorTbCampoFonte.innerHTML = "&nbsp;Valor:";
	        	 trTbCampoFonteValor.appendChild ( tdlbValorTbCampoFonte );

	        	 var tdValorTbCampoFonte = document.createElement("td");
	        	 tdValorTbCampoFonte.setAttribute("class", "textoTabelas");
	        	 
                 var valorFonteMoeda = formataMoeda(fonteValor);
	        	 tdValorTbCampoFonte.innerHTML = "R$ "+valorFonteMoeda+"<input type='hidden' name='fonteValor"+i+"' value='"+valorFonteMoeda+"'/>";
	        	 trTbCampoFonteValor.appendChild ( tdValorTbCampoFonte );

	        	 
	        	 //Linha de separacao entre as fontes
	        	 if(i != resultadosXML.length-1){
	        	 var trEndLine = document.createElement("tr"); 
	        	 tbCampoReserva.appendChild ( trEndLine );
	        	 	        	 
	        	 var tdEndLine = document.createElement("td");
	        	 tdEndLine.setAttribute("colspan", "2");
	        	 tdEndLine.setAttribute("class", "traco");
	        	 tdEndLine.innerHTML = "&nbsp";
	        	 trEndLine.appendChild(tdEndLine);
	        	 }
	        	 //
	        	 
	        	 //Linha de Espaco da tabela &nbsp;
	        	 var trNbsp = document.createElement("tr"); 
	        	 tbCampoReserva.appendChild ( trNbsp );
	        	 
	        	 var tdNbsp = document.createElement("tr");
	        	 tdNbsp.setAttribute("colspan", "2");
	        	 tdNbsp.innerHTML = "&nbsp;";
	        	 trNbsp.appendChild(tdNbsp);
	        	 //
	    	 }


	
}

